package com.project.service;

import com.project.bean.DeptBean;
import com.project.bean.EmployeeBean;

import java.util.List;

/**
 * @Title: IDeptService
 * @Package: com.project.service
 * @Description:
 * @Author: Liang-Xie
 * @Date: 2022/7/15 - 11:37
 */
@SuppressWarnings("all")
public interface IDeptService {
    /**
     * 查询部门并统计相关人数
     * @return部门集合
     */
    public List<DeptBean>findAll();

    /**
     * 级联添加，添加部门同时添加该部门员工集合
     * @param deptBean部门对象
     * @param employeeBeanList新员工集合
     */
    public void add(DeptBean deptBean, List<EmployeeBean>employeeBeanList);

    /**
     * 级联删除部门，同时删除该部门员工
     * @param id部门id
     */
    public void delCasede(Integer id);

    /**
     * 删除部门，同时将该部门员工外键设置为null
     * @param id部门id
     */
    public void delSetNull(Integer id);

    /**
     * 按ID查询部门，同时查询该部门中所有员工
     * @param id
     * @return部门对象
     */
    public DeptBean findById(Integer id);
}
